/*
 * EstudianteBase.java
 *
 * Created on 12 de octubre de 2007, 05:14 PM
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package wasolicitudesfiec.xml.ayudantias;

import wasolicitudesfiec.xml.DOMXMLConversion;
import org.w3c.dom.Element;

/**
 *
 * @author Luisfer
 * Como una abstraccion de lo que es un estudiante y base para otras clases que lo representen
 */
public class EstudianteBase extends DOMXMLConversion{
    protected static String relativePATH_XML="\\xml\\XMLEstudianteBase.xml";
    public final static String tagnameROOT="XMLEstudianteBase";
    private final static String tagnameMATRICULA="matricula";
    private final static String tagnameNOMBRES="nombres";
    private final static String tagnameAPELLIDOS="apellidos";
    private final static String tagnameCEDULA="cedula";
    private final static String tagnameCARRERA="carrera";
    private final static String tagnameFACULTAD="facultad";
    /** Creates a new instance of EstudianteBase */
    protected String matricula;
    protected String nombres;
    protected String apellidos;
    protected String cedula;
    protected String carrera;
    protected String facultad;
    public EstudianteBase() {
        super();
        this.relativePathXML=relativePATH_XML;
    }
    public EstudianteBase(String matricula,String cedula, String nombres,String apellidos,String facultad, String carrera){
        this();
        this.setMatricula(matricula);
        this.setNombres(nombres);
        this.setApellidos(apellidos);
        this.setCedula(cedula);
        this.setCarrera(carrera);
        this.setFacultad(facultad);
    }
    // <editor-fold defaultstate="collapsed" desc=" Metodos Getter y Setter ">
    public String getMatricula() {
        return matricula;
    }

    public void setMatricula(String matricula) {
        this.matricula = matricula;
    }

    public String getNombres() {
        return nombres;
    }

    public void setNombres(String nombres) {
        this.nombres = nombres;
    }

    public String getApellidos() {
        return apellidos;
    }

    public void setApellidos(String apellidos) {
        this.apellidos = apellidos;
    }

    public String getCedula() {
        return cedula;
    }

    public void setCedula(String cedula) {
        this.cedula = cedula;
    }

    public String getCarrera() {
        return carrera;
    }

    public void setCarrera(String carrera) {
        this.carrera = carrera;
    }

    public String getFacultad() {
        return facultad;
    }

    public void setFacultad(String facultad) {
        this.facultad = facultad;
    }
    // </editor-fold>

    protected void cargarObjetoAPartirDeXML_Interno() {
        Element raiz;
        raiz=this.rootElement;
        this.matricula=raiz.getElementsByTagName(tagnameMATRICULA).item(0).getTextContent().trim();
        this.nombres=raiz.getElementsByTagName(tagnameNOMBRES).item(0).getTextContent().trim();
        this.apellidos=raiz.getElementsByTagName(tagnameAPELLIDOS).item(0).getTextContent().trim();
        this.cedula=raiz.getElementsByTagName(tagnameCEDULA).item(0).getTextContent().trim();
        this.carrera=raiz.getElementsByTagName(tagnameCARRERA).item(0).getTextContent().trim();
        this.facultad=raiz.getElementsByTagName(tagnameFACULTAD).item(0).getTextContent().trim();
    }

    protected void crearXML_Interno() {
        this.rootElement.getElementsByTagName(tagnameMATRICULA).item(0).setTextContent(this.matricula!=null?this.matricula:"");
        this.rootElement.getElementsByTagName(tagnameNOMBRES).item(0).setTextContent(this.nombres!=null?this.nombres:"");
        this.rootElement.getElementsByTagName(tagnameAPELLIDOS).item(0).setTextContent(this.apellidos!=null?this.apellidos:"");
        this.rootElement.getElementsByTagName(tagnameCEDULA).item(0).setTextContent(this.cedula!=null?this.cedula:"");
        this.rootElement.getElementsByTagName(tagnameCARRERA).item(0).setTextContent(this.carrera!=null?this.carrera:"");
        this.rootElement.getElementsByTagName(tagnameFACULTAD).item(0).setTextContent(this.facultad!=null?this.facultad:"");
    }
}
